# 导入库
# -*- coding:utf-8 -*-
import urllib.request
import jsonpath
import json

# 爬取数据
url = 'http://www.lagou.com/lbs/getAllCitySearchLabels.json'
request = urllib.request.Request(url)
response = urllib.request.urlopen(request)
html = response.read()

# 把JSON格式字符串转换成Python对象
jsonobj = json.loads(html)

# 使用jsonpath解析json字段
# 从根节点开始，匹配name节点
items = []
city_list = jsonpath.jsonpath(jsonobj, '$..name')
city_code_list = jsonpath.jsonpath(jsonobj, '$..code')

for name, code in zip(city_list, city_code_list):
    item = {}
    item["code"] = code
    item['name'] = name
    items.append(item)

# 序列化并保存数据
# 打开或创建一个名为city.json的文件
file = open('city.json', 'w')
# 将列表序列化为JSON格式的字符串
content = json.dumps(items, ensure_ascii=False)
# 将JSON格式的字符串写入本地文件
file.write(content)
file.close()
